Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(app): Implement organization settings backend #710

Merged
merged 7 commits into from
Jan 9, 2025

Conversation

daryllimyt
Copy link
Contributor

@daryllimyt daryllimyt commented Jan 8, 2025

This PR Introduces org settings infra and service layer, but doesn't replace existing config usage yet (next PR).

Changes

  • Implement org settingsin the organization_settings db table as KV pairs of key: str -> value: bytes to support orjson-serialized JSON data, and data that's encrypted at rest.
  • Implement settings service and endpoints.
    • "Settings groups" are a related collection of settings. We expose get/update endpoints for settings groups so that clients interchange over typesafe structs.
    • We don't support CRUD endpoints for individual settings, as there is no valid use case for exposing them in the router.
    • Only internal services may read/update settings, and this should be done directly through the SettingsService layer.

Deprecations

  • Mark affected configs as deprecated

Testing

  • Add unit tests for org settings

@daryllimyt daryllimyt force-pushed the feat/org-settings-1 branch from a55f8a2 to 5130e27 Compare January 9, 2025 06:47
@daryllimyt daryllimyt changed the title feat(app): Add organization settings table schema and migrations feat(app): Implement organization settings backend Jan 9, 2025
@daryllimyt daryllimyt merged commit d7e814a into main Jan 9, 2025
9 checks passed
@daryllimyt daryllimyt deleted the feat/org-settings-1 branch January 9, 2025 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant